Why Java is robust and reliable programming langugae